
import {request} from "../../request/index"
Page({

data:{
    goodsObj:{},
    //商品是否被收藏
    isCollect:false
},
// 商品对象;
GoodsInfo:{},
onShow:function(){
    //返回的是一个数组，第一项是首页，最后一项是当前页面;
    let pages = getCurrentPages();
    let currentPage = pages[pages.length-1];
    let options = currentPage.options;
    const {goods_id} = options;
    this.getGoodsDetail(goods_id);
},
async getGoodsDetail(goods_id){
     const goodsObj = await request({
         url:'/goods/detail',
         data:{
             goods_id
         }
     });
     this.GoodsInfo = goodsObj;
     console.log(this.GoodsInfo)
     //1:获取缓存中页面收藏的商品;
     let collect = wx.getStorageSync("collect")||[];
     //2:判断当前商品是不是被收藏
     let isCollect = collect.some(v=>{
         return v.goods_id === this.GoodsInfo.goods_id
     })
     //png jpg gif webp
     //webp -----部分型号的苹果手机不识别webp图片
     //最好是找后台修改;
     //临时自己改----.webp ----.jpg
     this.setData({
         goodsObj:{
             goods_name:goodsObj.goods_name,
             goods_price:goodsObj.goods_price,
             goods_introduce:goodsObj.goods_introduce.replace(/\.webp/g,'.jpg'),
             pics:goodsObj.pics
         },
         isCollect
     })
},
  // 预览效果
  handlePreviewImage(e){
    const urls = this.GoodsInfo.pics.map(v=>v.pics_mid);
    //接收传递过来的url;
    const current = e.currentTarget.dataset.url;
    wx.previewImage({
        current,
        urls
    });
  },
  // 点击加入购物车
  handleCartAdd(){
     let cart = wx.getStorageSync("cart")||[];
     let index = cart.findIndex(v=>v.goods_id===this.GoodsInfo.goods_id);
     if(index===-1){
         this.GoodsInfo.num = 1;
         this.GoodsInfo.checked = true;
         cart.push(this.GoodsInfo)
     }else{
         cart[index].num++;
     }
     wx.setStorageSync("cart", cart);
     wx.showToast({
         title: '加入成功',
         mask: true
     });
  },
  handleCollect(){
     let isCollect =false;
     let collect = wx.getStorageSync("collect")||[];
     let index = collect.findIndex(v=>v.goods_id === this.GoodsInfo.goods_id);
     if(index!==-1){
         //已经收藏过了;   在数组中去删除这个收藏信息;
         collect.splice(index,1);
         isCollect = false;
         wx.showToast({
             title:'取消成功',
             icon:'success',
             mask:true
         })
     }else{
         collect.push(this.GoodsInfo);
         isCollect =true;
         wx.showToast({
             title: '收藏成功',
             icon: 'success',
             mask: true
         });
     }

     wx.setStorageSync('collect',collect);

     this.setData({
         isCollect
     })
  }
})